#ifndef MESH_H
#define MESH_H

#include <DirectLOL/graphicElement/graphicElement.h>

/*!
 *  \class Mesh
 *  \brief J'utilise le face-vertex mesh :
 *      J'utilise un tableau de sommet, ou chaque sommet enregistre les faces auquel il est rattaché
 *      et un tableau de face, contenant les indices des sommets le formant dans l'ordre horaire
 */

class Mesh : public GraphicElement
{
    public:

    Mesh();

    Vectorf * color;
    int normalActivated;
    int colorActivated;

    int size;

    int LoadMesh(std::string fileName);

    void SetPicking(unsigned char x, unsigned char y, unsigned char z);
    void FillBuffer();
    void Picking();
    void Display();
    void RenderBuffers(int apicking);
    void Transformations();
    void InitBuffers();
    void InitBooleans();
};

#endif // MESH_H
